
import { GetCurrentTheme } from "./ITheme.js";

export class IElementTheme {
    // 常用元素样式
    GetThemeLineHeight() { return GetCurrentTheme().GetLineHeight(); }
    GetThemeFontSize() { return GetCurrentTheme().GetFontSize(); }
    GetThemeFontFamily() { return GetCurrentTheme().GetFontFamily(); }
    GetThemeFontColor() { return GetCurrentTheme().GetFontColor(); }
    GetThemeBackgroundColor() { return GetCurrentTheme().GetBackgroundColor(); }
    GetThemeHoverFontColor() { return GetCurrentTheme().GetHoverFontColor(); }
    GetThemeHoverBackgroundColor() { return GetCurrentTheme().GetHoverBackgroundColor(); }
    GetThemePaddingTopBottom() { return GetCurrentTheme().GetPaddingTopBottom(); }
    GetThemePaddingLeftRight() { return GetCurrentTheme().GetPaddingLeftRight(); }
    GetThemeBorderRadius() { return GetCurrentTheme().GetBorderRadius(); }
    GetThemeBorderWidth() { return GetCurrentTheme().GetBorderWidth(); }
    GetThemeBorderStyle() { return GetCurrentTheme().GetBorderStyle(); }
    GetThemeBorderColor() { return GetCurrentTheme().GetBorderColor(); }
    GetThemeInlineWidth() { return GetCurrentTheme().GetInlineWidth(); }
    GetThemeInlineHeight() { return GetCurrentTheme().GetInlineHeight(); }

    // 文本颜色
    GetThemePrimaryTextColor() { return GetCurrentTheme().GetPrimaryTextColor(); }
    GetThemeRegularTextColor() { return GetCurrentTheme().GetRegularTextColor(); }
    GetThemeSecondaryTextColor() { return GetCurrentTheme().GetSecondaryTextColor(); }
    GetThemePlaceholderTextColor() { return GetCurrentTheme().GetPlaceholderTextColor(); }
    GetThemeDisabledTextColor() { return GetCurrentTheme().GetDisabledTextColor(); }

    // 字体大小
    GetThemeExtraLargeFontSize() { return GetCurrentTheme().GetExtraLargeFontSize(); }
    GetThemeLargeFontSize() { return GetCurrentTheme().GetLargeFontSize(); }
    GetThemeMediumFontSize() { return GetCurrentTheme().GetMediumFontSize(); }
    GetThemeBaseFontSize() { return GetCurrentTheme().GetBaseFontSize(); }
    GetThemeSmallFontSize() { return GetCurrentTheme().GetSmallFontSize(); }
    GetThemeExtraSmallFontSize() { return GetCurrentTheme().GetExtraSmallFontSize(); }

    // 行高
    GetThemeNoLineHeight() { return GetCurrentTheme().GetNoLineHeight(); }
    GetThemeCompactLineHeight() { return GetCurrentTheme().GetCompactLineHeight(); }
    GetThemeRegularLineHeight() { return GetCurrentTheme().GetRegularLineHeight(); }
    GetThemeLooseLineHeight() { return GetCurrentTheme().GetLooseLineHeight(); }

    // 基础颜色
    GetThemeBasicBlackColor() { return GetCurrentTheme().GetBasicBlackColor(); }
    GetThemeBasicWhiteColor() { return GetCurrentTheme().GetBasicWhiteColor(); }
    GetThemeBaseBackgroundColor() { return GetCurrentTheme().GetBaseBackgroundColor(); }
    GetThemePageBackgroundColor() { return GetCurrentTheme().GetPageBackgroundColor(); }
    GetThemeOverlayBackgroundColor() { return GetCurrentTheme().GetOverlayBackgroundColor(); }

    // 边框颜色
    GetThemeDarkerBorderColor() { return GetCurrentTheme().GetDarkerBorderColor(); }
    GetThemeDarkBorderColor() { return GetCurrentTheme().GetDarkBorderColor(); }
    GetThemeBaseBorderColor() { return GetCurrentTheme().GetBaseBorderColor(); }
    GetThemeLightBorderColor() { return GetCurrentTheme().GetLightBorderColor(); }
    GetThemeLighterBorderColor() { return GetCurrentTheme().GetLighterBorderColor(); }
    GetThemeExtraLightBorderColor() { return GetCurrentTheme().GetExtraLightBorderColor(); }
    
    // 填充颜色
    GetThemeDarkerFillColor() { return GetCurrentTheme().GetDarkerFillColor(); }
    GetThemeDarkFillColor() { return GetCurrentTheme().GetDarkFillColor(); }
    GetThemeBaseFillColor() { return GetCurrentTheme().GetBaseFillColor(); }
    GetThemeLightFillColor() { return GetCurrentTheme().GetLightFillColor(); }
    GetThemeLighterFillColor() { return GetCurrentTheme().GetLighterFillColor(); }
    GetThemeExtraLightFillColor() { return GetCurrentTheme().GetExtraLightFillColor(); }
    GetThemeBlankFillColor() { return GetCurrentTheme().GetBlankFillColor(); }
    
    // 主题色
    GetThemePrimaryColor() { return GetCurrentTheme().GetPrimaryColor(); }
    GetThemeDangerColor() { return GetCurrentTheme().GetDangerColor(); }
    GetThemeWarningColor() { return GetCurrentTheme().GetWarningColor(); }
    GetThemeSuccessColor() { return GetCurrentTheme().GetSuccessColor(); }
    GetThemeInfoColor() { return GetCurrentTheme().GetInfoColor(); }
    GetThemeDarkerPrimaryColor() { return GetCurrentTheme().GetDarkerPrimaryColor(); }
    GetThemeDarkPrimaryColor() { return GetCurrentTheme().GetDarkPrimaryColor(); }
    GetThemeBasePrimaryColor() { return GetCurrentTheme().GetBasePrimaryColor(); }
    GetThemeLightPrimaryColor() { return GetCurrentTheme().GetLightPrimaryColor(); }
    GetThemeLighterPrimaryColor() { return GetCurrentTheme().GetLighterPrimaryColor(); }
    GetThemeExtraLightPrimaryColor() { return GetCurrentTheme().GetExtraLightPrimaryColor(); }
    GetThemeDarkerSuccessColor() { return GetCurrentTheme().GetDarkerSuccessColor(); }
    GetThemeDarkSuccessColor() { return GetCurrentTheme().GetDarkSuccessColor(); }
    GetThemeBaseSuccessColor() { return GetCurrentTheme().GetBaseSuccessColor(); }
    GetThemeLightSuccessColor() { return GetCurrentTheme().GetLightSuccessColor(); }
    GetThemeLighterSuccessColor() { return GetCurrentTheme().GetLighterSuccessColor(); }
    GetThemeExtraLightSuccessColor() { return GetCurrentTheme().GetExtraLightSuccessColor(); }
    GetThemeDarkerWarningColor() { return GetCurrentTheme().GetDarkerWarningColor(); }
    GetThemeDarkWarningColor() { return GetCurrentTheme().GetDarkWarningColor(); }
    GetThemeBaseWarningColor() { return GetCurrentTheme().GetBaseWarningColor(); }
    GetThemeLightWarningColor() { return GetCurrentTheme().GetLightWarningColor(); }
    GetThemeLighterWarningColor() { return GetCurrentTheme().GetLighterWarningColor(); }
    GetThemeExtraLightWarningColor() { return GetCurrentTheme().GetExtraLightWarningColor(); }
    GetThemeDarkerDangerColor() { return GetCurrentTheme().GetDarkerDangerColor(); }
    GetThemeDarkDangerColor() { return GetCurrentTheme().GetDarkDangerColor(); }
    GetThemeBaseDangerColor() { return GetCurrentTheme().GetBaseDangerColor(); }
    GetThemeLightDangerColor() { return GetCurrentTheme().GetLightDangerColor(); }
    GetThemeLighterDangerColor() { return GetCurrentTheme().GetLighterDangerColor(); }
    GetThemeExtraLightDangerColor() { return GetCurrentTheme().GetExtraLightDangerColor(); }
    GetThemeDarkerInfoColor() { return GetCurrentTheme().GetDarkerInfoColor(); }
    GetThemeDarkInfoColor() { return GetCurrentTheme().GetDarkInfoColor(); }
    GetThemeBaseInfoColor() { return GetCurrentTheme().GetBaseInfoColor(); }
    GetThemeLightInfoColor() { return GetCurrentTheme().GetLightInfoColor(); }
    GetThemeLighterInfoColor() { return GetCurrentTheme().GetLighterInfoColor(); }
    GetThemeExtraLightInfoColor() { return GetCurrentTheme().GetExtraLightInfoColor(); }
}